﻿
using System.Collections.Generic;
using Enferno.StormApiClient.ExposeProxy;

namespace Enferno.Public.Web.Models
{

    public class ParametricModel : ParametricBaseModel<ParametricValueModel>
    {
        public ParametricModel()
        {
            
        }   
    }

    public class ParametricBaseModel<TParametricValueModel>
        where TParametricValueModel: ParametricValueModel
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string Description { get; set; }

        /// <summary>
        /// Unit of measurement. Should be appended to the value when displaying values.
        /// </summary>
        public string Uom { get; set; }
        public bool IsPrimary { get; set; }

        /// <summary>
        /// Can be used to group parametrics for display. Not used in ProductItemModels.
        /// </summary>
        public int GroupId { get; set; }
        /// <summary>
        /// Can be used to group parametrics for display. Not used in ProductItemModels.
        /// </summary>
        public string Group { get; set; }

        public ParametricValueType ValueType { get; set; }

        public List<TParametricValueModel> Values { get; set; }
    }
}
